$(function () {


    var pageNum = 1;
    var pageSize = 3;
    // 获取全部数据和分页
    function init(search) {
        $.ajax({
            url: '/getAllPost',
            type: 'get',
            // 分页查询需要参数
            data: {
                pageNum: pageNum,
                pageSize: pageSize,
                ...search
            },
            success: function (data) {
                // console.log(data)
                let html = template('postListTemp', data.data)
                $('tbody').html(html)
                // console.log(result.results.total);

                // 生成分页结构,参数为总数(数据条数)
                setPagenation(Math.ceil(data.data.total / pageSize))

            }
        })
    }

    init();
    // 设置分页数据
    function setPagenation(total) {

        $('.pagination').bootstrapPaginator({

            //设置版本号
            bootstrapMajorVersion: 3,
            // 显示第几页
            currentPage: pageNum,
            // 总页数
            totalPages: total,
            onPageClicked: function (event, originalEvent, type, page) {
                // 把当前点击的页码赋值给currentPage, 调用ajax,渲染页面
                pageNum = page;

                init()


            }


        })
    }


    // 获取分类数据
    $.ajax({

        type: 'get',
        url: '/getAllcate',
        dataType: 'json',
        success: function (res) {

            // console.log(res);
            // 拼接字符串
            // 设置第一个显示的分类
            var str = `<option value="all">所有分类</option>`
            for (let i = 0; i < res.data.length; i++) {

                str += `<option value="${res.data[i].id}">${res.data[i].name}</option>`

            }
            $('.cateAll').html(str)





        }






    })


    // 实现筛选

    // 增加点击事件
    $('.btn-search').on('click', function () {

        // 获取选择器的值value
        let obj = {
            cate: $('.cateAll').val(),
            status: $('.statuSelector').val()

        }
        console.log(obj)
        init(obj)


    })

    $('tbody').on('click', '.btndel', function () {
        // 获取自定义id,用jq方法获取
        // let id = $(this).data('id')
        // let id = $(this).data().id
        // 原生方法,注意,选择器如果使用原生的,那么久不用$(this),而是直接写this
        let id = $(this)[0].dataset['id']
        console.log(id);

        // let id = this[0].dataset
        if (confirm('你确定要删除吗')) {
            // 确定就发ajax请求
            $.ajax({

                type: 'get',
                dataType: 'json',
                url: '/delpostById',
                data: { id },
                success: function (res) {
                    if (res.code == 200) {

                        $('.alert-danger > span').text(res.msg)
                        $('.alert-danger').fadeIn(500).delay(3000).fadeOut(500);
                        // 由于成功删除之后刷新页面的page还是当前页,就要把它减一
                        if ($('tbody>tr').length == 1 && pageNum > 1) {
                            pageNum--
                        }
                        // 重新通过分页来显示数据
                        init()
                    }




                }




            })
        }







    })

})